table.sidebyside {
  background: white;
  border: 1px #C0C0C0 solid;
  border-collapse: collapse;
  margin: 2px;
  padding: 2px;
}

table.sidebyside a {
  color: black;
  text-decoration: none;
}

table.sidebyside col.left {
  border-right: 1px #C0C0C0 solid;
  width: 50%;
}

table.sidebyside.newfile col.left {
  border-right: 1px #C0C0C0 solid;
  width: 0%;
}

table.sidebyside col.line {
  border-right: 1px #C0C0C0 solid;
}

table.sidebyside col.right {
  width: 50%;
}

table.sidebyside.newfile col.right {
  width: 100%;
}

table.sidebyside pre {
  font-size: 8pt;
  line-height: 140%;
  margin: 0;
  white-space: pre-wrap;      /* CSS 3 */
  white-space: -moz-pre-wrap; /* Mozilla, 1999+ */
  white-space: -pre-wrap;     /* Opera 4-6 */
  white-space: -o-pre-wrap;   /* Opera 7 */
  word-wrap: break-word;      /* IE 5.5+ */
}

table.sidebyside tr.first td,
table.sidebyside tr.first th {
  border-top: 1px #D0D0D0 solid;
}

table.sidebyside tr.last td,
table.sidebyside tr.last th {
  border-bottom: 1px #D0D0D0 solid;
}

table.sidebyside tbody.binary td {
  background: #dbebff;
  padding: 4px;
}

table.sidebyside tbody.collapsed a {
  text-decoration: underline;
  color: black;
}

table.sidebyside tbody.collapsed td {
  background: #e4d9cb;
  font-size: x-small;
  text-align: center;
}

table.sidebyside tbody.collapsed th {
  background: #e4d9cb;
}

table.sidebyside tbody.delete {
  background: #ffc5ce;
}

table.sidebyside tbody.delete th {
  background: #ebb1ba;
}

table.sidebyside tbody.delete tr.selected * {
  background: #dfb1b1;
}

table.sidebyside tbody.insert {
  background: #c5ffc4;
}

table.sidebyside tbody.insert th {
  background: #b1ebb0;
}

table.sidebyside tbody.insert tr.selected * {
  background: #9ae298;
}

table.sidebyside tbody.replace {
  background: #fdfebc;
}

table.sidebyside tbody.replace th {
  background: #e9eaa8;
}

table.sidebyside tbody.replace tr.selected * {
  background: #e2e179;
}

table.sidebyside tbody.replace .hl {
  background: #eff23d;
}

table.sidebyside tbody td {
  vertical-align: top;
}

table.sidebyside tbody th {
  background: #F0F0F0;
  text-align: right;
  vertical-align: top;
}

table.sidebyside tbody tr.selected * {
  background: #e2e2e2;
}

table.sidebyside thead th {
  background: #F0F0F0;
  border-bottom: 1px #C0C0C0 solid;
  font-size: 120%;
  font-weight: bold;
  padding: 4px 8px;
  text-align: left;
  text-overflow: ellipsis;
}

table.sidebyside thead th.rev {
  font-size: 100%;
}

table.sidebyside thead th.controls,
table.sidebyside th.controls {
  font-size: 100%;
  font-weight: normal;
  padding: 2px 0 2px 2px;
  vertical-align: top;
}

table.sidebyside .commentflag {
  background: url('../images/comment.png') no-repeat !important;
  cursor: pointer;
  font-size: 90%;
  font-weight: normal;
  height: 21px;
  left: 2px;
  line-height: 1.9em;
  margin-top: -1px;
  padding-left: 5px;
  position: absolute;
  text-align: left;
  vertical-align: top;
  width: 25px;
}

#ghost-commentflag {
  cursor: pointer;
}

table.sidebyside .commentflag.draft {
  background: url('../images/comment-draft.png') no-repeat !important;
}

#diffs {
  list-style: none;
  margin: 0;
  padding: 0;
}

#diffs div.index ol {
  margin-bottom: 20px;
  padding-left: 30px;
}

#diffs table.sidebyside {
  margin-bottom: 20px;
}

#comment-dlg dd pre {
  font-size: 8pt;
  line-height: 140%;
  margin: 0;
  white-space: pre-wrap;      /* CSS 3 */
  white-space: -moz-pre-wrap; /* Mozilla, 1999+ */
  white-space: -pre-wrap;     /* Opera 4-6 */
  white-space: -o-pre-wrap;   /* Opera 7 */
  word-wrap: break-word;      /* IE 5.5+ */
}

#comment-dlg textarea {
  border: 1px #888a85 solid;
  font-size: 10pt;
  height: 100px;
  margin: 5px 0 0 0;
  padding: 10px;
  width: 450px;
}

#comment-dlg #commentform {
  margin: 0;
  padding: 0;
}

#comment-dlg #commentform .label {
  display: block;
  font-weight: bold;
}

#comment-dlg #comments-list {
  font-size: 90%;
  margin: 0px;
  padding: 0px;
}

#comment-dlg #comments-list dd {
  padding: 1em 0;
}

#comment-dlg #comments-list dt {
  margin-top: 0.5em;
}

#comment-dlg #comments-list dt a {
  color: #AB5603;
  font-size: 1.1em;
  font-weight: bold;
  text-decoration: none;
}

#comment-dlg #comments-list dt span {
  color: #487858;
  font-weight: normal;
}

#comment-dlg #comments-list li.comment {
  border-top: 1px #cccccc solid;
  margin-bottom: 0.4em;
}

#comment-dlg #comments-list li.comment:first-child {
  border-top: 0px;
}

#comment-dlg #comments-list .draft dt a {
  color: #4e9a06;
}

#comment-dlg #draft-comments-list {
  font-size: 90%;
  margin: 0px;
  padding: 0px;
}

#comment-dlg #draft-comments-list dd {
  padding: 1em 0;
}

#comment-dlg #draft-comments-list dt {
  margin-top: 0.5em;
}

#comment-dlg #draft-comments-list dt a {
  color: #AB5603;
  font-size: 1.1em;
  font-weight: bold;
  text-decoration: none;
}

#comment-dlg #draft-comments-list dt span {
  color: #487858;
  font-weight: normal;
}

#comment-dlg #draft-comments-list li.comment {
  border-top: 1px #cccccc solid;
  margin-bottom: 0.4em;
}

#comment-dlg #draft-comments-list li.comment:first-child {
  border-top: 0px;
}

#comment-dlg #draft-comments-list .draft dt a {
  color: #4e9a06;
}

#comment-dlg #comment-status {
  color: black;
  float: left;
  margin-top: 5px;
}

#comment-dlg #comment-status.error {
  font-weight: bold;
}

#comment-dlg #reviewform {
  padding: 0;
  margin: 0;
}

#comment-dlg #review-body {
  border: 1px #888a85 solid;
  cursor: text;
  display: block;
  height: 300px;
  padding: 0px;
}

#comment-dlg #review-body textarea {
  border: 0;
  height: 1.5em;
  margin: 0px;
  overflow: hidden;
}

#comment-dlg #review-body #all-review-comments {
  border-bottom: 1px #888a85 dotted;
  border-top: 1px #888a85 dotted;
  cursor: default;
  margin: 0px 10px;
}

#comment-dlg #review-body #all-review-comments dd {
  padding: 1em 0;
}

#comment-dlg #review-body #all-review-comments dl {
  padding: 0.5em 0;
}

#comment-dlg #review-body #all-review-comments dt .filename {
  font-weight: bold;
}

#comment-dlg #review-body #all-review-comments dt .lines,
#comment-dlg #review-body #all-review-comments dt .revisions {
  color: #487858;
}

#comment-dlg #review-body #all-review-comments ol {
  list-style: none;
  margin: 0px;
  padding: 5px 0px 0px 0px;
}

#comment-dlg #tab-review label {
  display: block;
  padding-top: 10px;
}


/****************************************************************************
 * Diff information
 ****************************************************************************/
#diff-details {
  border-spacing: 8px;
  border-top: 1px #c2c1b0 solid;
  margin-top: 20px;
  padding: 5px 0px;
  width: 100%;
}

.revision-selector {
  margin-bottom: 6px;
}

.revision-select td {
  padding: 4px;
  margin: 4px;
}

.revision-selector th {
  padding: 4px 6px;
  text-align: right;
  vertical-align: bottom;
  margin: 4px;
}

.revision-selector .revisions {
  padding: 0;
}

.revision-selector .revisions .current {
  font-weight: bold;
  padding: 2px 6px;
}

.revision-selector .revisions a {
  border: 1px #999999 solid;
  color: black;
  padding: 2px 6px;
  text-decoration: none;
}

.revision-selector .revisions a:hover {
  background: #E7E0A2;
  border-color: #003366;
  color: black;
}

.revision-selector .revisions a:visited {
  color: black;
}

.diff-error {
  background: #fff6a6;
  border: 1px #9F9656 solid;
  margin: 0px 2px 4px 1px;
  padding: 4px 8px;
}


/****************************************************************************
 * Pagination
 ****************************************************************************/
.paginate-previous, .paginate-next {
  padding: 2px 3px;
  border: 1px solid #ddd;
}

.paginate-link {
  padding: 2px 4px;
  border: 1px solid #ddd;
}

.paginate-current {
  padding: 2px 4px;
  border: 1px solid #ddd;
  font-weight: bold;
  background: #417690;
  color: #f4f379;
}
